Reconciling optimization with secure compilation

نویسندگان

چکیده

Software protections against side-channel and physical attacks are essential to the development of secure applications. Such meaningful at machine code or micro-architectural level, but they typically do not carry observable semantics source level. This renders them susceptible miscompilation, security engineers embed input/output side-effects prevent optimizing compilers from altering them. Yet these error-prone compiler-dependent. The current practice involves analyzing generated make sure privacy properties still enforced. These may also be too expensive in fine-grained such as control-flow integrity. We introduce observations program state that intrinsic correct execution protections, along with means specify preserve across compilation flow. complement semantics-preservation contract compilers. an opacification mechanism enforce a partial ordering observations. approach is compatible production compiler does incur any modification its optimization passes. validate effectiveness performance our on range benchmarks, expressing applications terms made specific points.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Formally Secure Compilation

Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...

متن کامل

Formally Secure Compilation

Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...

متن کامل

Formally Secure Compilation

Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...

متن کامل

Formally Secure Compilation

Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...

متن کامل

Formally Secure Compilation

Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Proceedings of the ACM on programming languages

سال: 2021

ISSN: ['2475-1421']

DOI: https://doi.org/10.1145/3485519